Model checking abstract state machines
نویسنده
چکیده
State Machines (ASM) ist eine formale Spezifikationssprache, die es erlaubt, auf einem hohen Abstraktionsniveau zu modellieren. Sie ist gut geeignet für verschiedenartigste Anwendungen. Computerbasierte Werkzeugunterstützung ist in Form von Editoren, Typecheckern und Simulatoren vorhanden. ASM ist außerdem in die Logiken zweier Theorembeweiser eingebettet worden, die interaktives Beweisen unterstützen. Diese Dissertation hat zum Ziel, die vorhandene Werkzeugunterstützung um einen vollständig automatisierten Ansatz zu erweitern, das sogenannte Modelchecking. Modelchecking ist die vollständige Suche im Zustandsraum des zu untersuchenden Systemmodells. Die Algorithmen arbeiten automatisch und bedürfen keiner Interaktion mit dem Benutzer oder der Benutzerin. Als zentrale Werkzeugumgebung wird die ASM Workbench verwendet, in die ein Modelchecker integriert wird. Diese Werkzeugumgebung wird mit einer allgemeinen Schnittstelle in Form einer Zwischensprache versehen. Diese allgemeine Schnittstelle dient als Grundlage zur Anbindung verschiedenerModelchecker, die auf einfachen Transitionssystemen basieren. Mit der Transformation der abstrakten Spezifikationssprache ASM in die sehr einfachen Sprachen von vollautomatischenWerkzeugen schlägt diese Arbeit eine Brücke über den tiefen Graben zwischen Modellierungssprachen, die auf hohem Niveau beschreiben, und Werkzeugsprachen, die algorithmisch einfach zu behandeln sind. Auf der Basis der allgemeinen Schnittstelle werden im Rahmen dieser Dissertation zwei konkrete Schnittstellen entwickelt: von der ASM Workbench zum Modelchecker SMV und zum MDG-Paket. Ersteres Werkzeug wird häufig eingesetzt und implementiert symbolisches Modelchecken für CTL-Formeln. Die Anbindung zum Modelchecker SMV ist implementiert und zwei Fallstudien wurden mittels der entwickelten Transformation und dem SMV Werkzeug untersucht. Die Ergebnisse zeigen die Anwendbarkeit aber auch die Grenzen dieses Ansatzes auf. Diese Grenzen motivieren die Entwicklung der zweiten Schnittstelle zum MDG-Paket. Dieses Paket umfaßt die Basisfunktionalität für symbolisches Modelchecking auf der Grundlage von Multiway Decision Graphs (MDGs). Diese Graphenstruktur erlaubt die Repräsentation von möglicherweise unendlichen Transitionssystemen mit Hilfe von abstrakten Sorten und Funktionen. Sie bietet daher ein einfaches Mittel, um die Abstraktion von Modellen zu unterstützen. Außerdem erlaubt dieser Ansatz, Annahmen über das zu untersuchende System und seine Umgebung in temporaler Logik zu spezifizieren. Die resultierende logische Modellierung wird anschließend mit dem Systemmodell vereinigt und führt zu einer vollständigeren Modellierung. Damit erweitert diese zweite Schnittstelle die Grenzen der vollautomatischen Analyse, die Modelchecking zur Verfügung stellt.
منابع مشابه
Model Checking CoreASM Specifications
In this paper we present an approach to model checking abstract state machines using the Spin model checker. We give an algorithm for automatically transforming ASM specifications written in CoreASM [1] into Promela specifications. Though an algorithm for translating ASMs into Promela has already been presented in [2], our method supports a more powerful ASM language, including support for n-ar...
متن کاملModel Checking for Abstract State Machines
In this paper, we discuss the use of a model checker in combination with the speci cation method of Abstract State Machines (ASMs). A schema is introduced for transforming ASM models into the language of a model checker. We prove that the transformation preserves the semantics of ASMs and provide a theoretical framework for a transformation tool. Experience with model-checking the ASM model of ...
متن کاملA Tool for Verifying ASM Models Using Multiway Decision Graphs
In this paper we present a formal hardware verification tool linking ASM with MDG. ASM (Abstract State Machines) is a state based language for describing transition systems. MDG (Multiway Decision Graphs) provides symbolic representation of transition systems with support of abstract sorts and functions. We implemented a transformation tool that automatically generates MDG models from ASM speci...
متن کاملModel Checking Support for the ASM High-Level Language
Gurevich's Abstract State Machines (ASM) constitute a high-level speciication language for a wide range of applications. The existing tool support for ASM|currently including type-checking, simulation and debugging|should be extended to support computer-aided veriication, in particular by model checking. In this paper we introduce an interface from our existing tool environment to the model che...
متن کاملModel Checking Abstract State Machines with Answer Set Programming
Answer Set Programming (ASP) is a logic programming paradigm that has been shown as a useful tool in various application areas due to its expressive modelling language. These application areas include Bourided Model Checking (BMC). BMC is a verification technique that is recognized for its strong ability of finding errors in computer systems. To apply BMC, a system needs to be modelled in a for...
متن کاملAutomated Verification of Specifications with Typestates and Access Permissions
We propose an approach to formally verify Plural specifications based on access permissions and typestates, by model-checking automatically generated abstract state-machines. Our exhaustive approach captures all the possible behaviors of abstract concurrent programs implementing the specification. We describe the formal methodology employed by our technique and provide an example as proof of co...
متن کامل